/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements. See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: InLongBinlog.proto

package org.apache.inlong.sort.formats.binlog;

public final class InLongBinlog {
  private InLongBinlog() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
  }
  /**
   * Protobuf enum {@code org.apache.inlong.sort.formats.binlog.EventType}
   */
  public enum EventType
      implements com.google.protobuf.ProtocolMessageEnum {
    /**
     * <code>INSERT = 1;</code>
     */
    INSERT(0, 1),
    /**
     * <code>UPDATE = 2;</code>
     */
    UPDATE(1, 2),
    /**
     * <code>DELETE = 3;</code>
     */
    DELETE(2, 3),
    /**
     * <code>CREATE = 4;</code>
     */
    CREATE(3, 4),
    /**
     * <code>ALTER = 5;</code>
     */
    ALTER(4, 5),
    /**
     * <code>ERASE = 6;</code>
     */
    ERASE(5, 6),
    /**
     * <code>QUERY = 7;</code>
     */
    QUERY(6, 7),
    /**
     * <code>GTID = 8;</code>
     */
    GTID(7, 8),
    ;

    /**
     * <code>INSERT = 1;</code>
     */
    public static final int INSERT_VALUE = 1;
    /**
     * <code>UPDATE = 2;</code>
     */
    public static final int UPDATE_VALUE = 2;
    /**
     * <code>DELETE = 3;</code>
     */
    public static final int DELETE_VALUE = 3;
    /**
     * <code>CREATE = 4;</code>
     */
    public static final int CREATE_VALUE = 4;
    /**
     * <code>ALTER = 5;</code>
     */
    public static final int ALTER_VALUE = 5;
    /**
     * <code>ERASE = 6;</code>
     */
    public static final int ERASE_VALUE = 6;
    /**
     * <code>QUERY = 7;</code>
     */
    public static final int QUERY_VALUE = 7;
    /**
     * <code>GTID = 8;</code>
     */
    public static final int GTID_VALUE = 8;


    public final int getNumber() { return value; }

    public static EventType valueOf(int value) {
      switch (value) {
        case 1: return INSERT;
        case 2: return UPDATE;
        case 3: return DELETE;
        case 4: return CREATE;
        case 5: return ALTER;
        case 6: return ERASE;
        case 7: return QUERY;
        case 8: return GTID;
        default: return null;
      }
    }

    public static com.google.protobuf.Internal.EnumLiteMap<EventType>
        internalGetValueMap() {
      return internalValueMap;
    }
    private static com.google.protobuf.Internal.EnumLiteMap<EventType>
        internalValueMap =
          new com.google.protobuf.Internal.EnumLiteMap<EventType>() {
            public EventType findValueByNumber(int number) {
              return EventType.valueOf(number);
            }
          };

    public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
      return getDescriptor().getValues().get(index);
    }
    public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
      return getDescriptor();
    }
    public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
      return org.apache.inlong.sort.formats.binlog.InLongBinlog.getDescriptor().getEnumTypes().get(0);
    }

    private static final EventType[] VALUES = values();

    public static EventType valueOf(
        com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
      if (desc.getType() != getDescriptor()) {
        throw new java.lang.IllegalArgumentException(
          "EnumValueDescriptor is not for this type.");
      }
      return VALUES[desc.getIndex()];
    }

    private final int index;
    private final int value;

    private EventType(int index, int value) {
      this.index = index;
      this.value = value;
    }

    // @@protoc_insertion_point(enum_scope:org.apache.inlong.sort.formats.binlog.EventType)
  }

  public interface ColumnOrBuilder
      extends com.google.protobuf.MessageOrBuilder {

    // optional int32 index = 1;
    /**
     * <code>optional int32 index = 1;</code>
     */
    boolean hasIndex();
    /**
     * <code>optional int32 index = 1;</code>
     */
    int getIndex();

    // optional int32 sqlType = 2;
    /**
     * <code>optional int32 sqlType = 2;</code>
     */
    boolean hasSqlType();
    /**
     * <code>optional int32 sqlType = 2;</code>
     */
    int getSqlType();

    // optional string name = 3;
    /**
     * <code>optional string name = 3;</code>
     */
    boolean hasName();
    /**
     * <code>optional string name = 3;</code>
     */
    java.lang.String getName();
    /**
     * <code>optional string name = 3;</code>
     */
    com.google.protobuf.ByteString
        getNameBytes();

    // optional bool isKey = 4;
    /**
     * <code>optional bool isKey = 4;</code>
     */
    boolean hasIsKey();
    /**
     * <code>optional bool isKey = 4;</code>
     */
    boolean getIsKey();

    // optional bool updated = 5;
    /**
     * <code>optional bool updated = 5;</code>
     */
    boolean hasUpdated();
    /**
     * <code>optional bool updated = 5;</code>
     */
    boolean getUpdated();

    // optional bool isNull = 6 [default = false];
    /**
     * <code>optional bool isNull = 6 [default = false];</code>
     */
    boolean hasIsNull();
    /**
     * <code>optional bool isNull = 6 [default = false];</code>
     */
    boolean getIsNull();

    // repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
     */
    java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> 
        getPropsList();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
     */
    org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair getProps(int index);
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
     */
    int getPropsCount();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
     */
    java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder> 
        getPropsOrBuilderList();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
     */
    org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder getPropsOrBuilder(
        int index);

    // optional string value = 8;
    /**
     * <code>optional string value = 8;</code>
     */
    boolean hasValue();
    /**
     * <code>optional string value = 8;</code>
     */
    java.lang.String getValue();
    /**
     * <code>optional string value = 8;</code>
     */
    com.google.protobuf.ByteString
        getValueBytes();

    // optional int32 length = 9;
    /**
     * <code>optional int32 length = 9;</code>
     */
    boolean hasLength();
    /**
     * <code>optional int32 length = 9;</code>
     */
    int getLength();
  }
  /**
   * Protobuf type {@code org.apache.inlong.sort.formats.binlog.Column}
   */
  public static final class Column extends
      com.google.protobuf.GeneratedMessage
      implements ColumnOrBuilder {
    // Use Column.newBuilder() to construct.
    private Column(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private Column(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final Column defaultInstance;
    public static Column getDefaultInstance() {
      return defaultInstance;
    }

    public Column getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private Column(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 8: {
              bitField0_ |= 0x00000001;
              index_ = input.readInt32();
              break;
            }
            case 16: {
              bitField0_ |= 0x00000002;
              sqlType_ = input.readInt32();
              break;
            }
            case 26: {
              bitField0_ |= 0x00000004;
              name_ = input.readBytes();
              break;
            }
            case 32: {
              bitField0_ |= 0x00000008;
              isKey_ = input.readBool();
              break;
            }
            case 40: {
              bitField0_ |= 0x00000010;
              updated_ = input.readBool();
              break;
            }
            case 48: {
              bitField0_ |= 0x00000020;
              isNull_ = input.readBool();
              break;
            }
            case 58: {
              if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
                props_ = new java.util.ArrayList<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair>();
                mutable_bitField0_ |= 0x00000040;
              }
              props_.add(input.readMessage(org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.PARSER, extensionRegistry));
              break;
            }
            case 66: {
              bitField0_ |= 0x00000040;
              value_ = input.readBytes();
              break;
            }
            case 72: {
              bitField0_ |= 0x00000080;
              length_ = input.readInt32();
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
          props_ = java.util.Collections.unmodifiableList(props_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_Column_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_Column_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.class, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder.class);
    }

    public static com.google.protobuf.Parser<Column> PARSER =
        new com.google.protobuf.AbstractParser<Column>() {
      public Column parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Column(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser<Column> getParserForType() {
      return PARSER;
    }

    private int bitField0_;
    // optional int32 index = 1;
    public static final int INDEX_FIELD_NUMBER = 1;
    private int index_;
    /**
     * <code>optional int32 index = 1;</code>
     */
    public boolean hasIndex() {
      return ((bitField0_ & 0x00000001) == 0x00000001);
    }
    /**
     * <code>optional int32 index = 1;</code>
     */
    public int getIndex() {
      return index_;
    }

    // optional int32 sqlType = 2;
    public static final int SQLTYPE_FIELD_NUMBER = 2;
    private int sqlType_;
    /**
     * <code>optional int32 sqlType = 2;</code>
     */
    public boolean hasSqlType() {
      return ((bitField0_ & 0x00000002) == 0x00000002);
    }
    /**
     * <code>optional int32 sqlType = 2;</code>
     */
    public int getSqlType() {
      return sqlType_;
    }

    // optional string name = 3;
    public static final int NAME_FIELD_NUMBER = 3;
    private java.lang.Object name_;
    /**
     * <code>optional string name = 3;</code>
     */
    public boolean hasName() {
      return ((bitField0_ & 0x00000004) == 0x00000004);
    }
    /**
     * <code>optional string name = 3;</code>
     */
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          name_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string name = 3;</code>
     */
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    // optional bool isKey = 4;
    public static final int ISKEY_FIELD_NUMBER = 4;
    private boolean isKey_;
    /**
     * <code>optional bool isKey = 4;</code>
     */
    public boolean hasIsKey() {
      return ((bitField0_ & 0x00000008) == 0x00000008);
    }
    /**
     * <code>optional bool isKey = 4;</code>
     */
    public boolean getIsKey() {
      return isKey_;
    }

    // optional bool updated = 5;
    public static final int UPDATED_FIELD_NUMBER = 5;
    private boolean updated_;
    /**
     * <code>optional bool updated = 5;</code>
     */
    public boolean hasUpdated() {
      return ((bitField0_ & 0x00000010) == 0x00000010);
    }
    /**
     * <code>optional bool updated = 5;</code>
     */
    public boolean getUpdated() {
      return updated_;
    }

    // optional bool isNull = 6 [default = false];
    public static final int ISNULL_FIELD_NUMBER = 6;
    private boolean isNull_;
    /**
     * <code>optional bool isNull = 6 [default = false];</code>
     */
    public boolean hasIsNull() {
      return ((bitField0_ & 0x00000020) == 0x00000020);
    }
    /**
     * <code>optional bool isNull = 6 [default = false];</code>
     */
    public boolean getIsNull() {
      return isNull_;
    }

    // repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;
    public static final int PROPS_FIELD_NUMBER = 7;
    private java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> props_;
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
     */
    public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> getPropsList() {
      return props_;
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
     */
    public java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder> 
        getPropsOrBuilderList() {
      return props_;
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
     */
    public int getPropsCount() {
      return props_.size();
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
     */
    public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair getProps(int index) {
      return props_.get(index);
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
     */
    public org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder getPropsOrBuilder(
        int index) {
      return props_.get(index);
    }

    // optional string value = 8;
    public static final int VALUE_FIELD_NUMBER = 8;
    private java.lang.Object value_;
    /**
     * <code>optional string value = 8;</code>
     */
    public boolean hasValue() {
      return ((bitField0_ & 0x00000040) == 0x00000040);
    }
    /**
     * <code>optional string value = 8;</code>
     */
    public java.lang.String getValue() {
      java.lang.Object ref = value_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          value_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string value = 8;</code>
     */
    public com.google.protobuf.ByteString
        getValueBytes() {
      java.lang.Object ref = value_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        value_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    // optional int32 length = 9;
    public static final int LENGTH_FIELD_NUMBER = 9;
    private int length_;
    /**
     * <code>optional int32 length = 9;</code>
     */
    public boolean hasLength() {
      return ((bitField0_ & 0x00000080) == 0x00000080);
    }
    /**
     * <code>optional int32 length = 9;</code>
     */
    public int getLength() {
      return length_;
    }

    private void initFields() {
      index_ = 0;
      sqlType_ = 0;
      name_ = "";
      isKey_ = false;
      updated_ = false;
      isNull_ = false;
      props_ = java.util.Collections.emptyList();
      value_ = "";
      length_ = 0;
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized != -1) return isInitialized == 1;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        output.writeInt32(1, index_);
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        output.writeInt32(2, sqlType_);
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        output.writeBytes(3, getNameBytes());
      }
      if (((bitField0_ & 0x00000008) == 0x00000008)) {
        output.writeBool(4, isKey_);
      }
      if (((bitField0_ & 0x00000010) == 0x00000010)) {
        output.writeBool(5, updated_);
      }
      if (((bitField0_ & 0x00000020) == 0x00000020)) {
        output.writeBool(6, isNull_);
      }
      for (int i = 0; i < props_.size(); i++) {
        output.writeMessage(7, props_.get(i));
      }
      if (((bitField0_ & 0x00000040) == 0x00000040)) {
        output.writeBytes(8, getValueBytes());
      }
      if (((bitField0_ & 0x00000080) == 0x00000080)) {
        output.writeInt32(9, length_);
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, index_);
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(2, sqlType_);
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(3, getNameBytes());
      }
      if (((bitField0_ & 0x00000008) == 0x00000008)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(4, isKey_);
      }
      if (((bitField0_ & 0x00000010) == 0x00000010)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(5, updated_);
      }
      if (((bitField0_ & 0x00000020) == 0x00000020)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(6, isNull_);
      }
      for (int i = 0; i < props_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(7, props_.get(i));
      }
      if (((bitField0_ & 0x00000040) == 0x00000040)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(8, getValueBytes());
      }
      if (((bitField0_ & 0x00000080) == 0x00000080)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(9, length_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Column parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Column parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Column parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Column parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Column parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Column parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Column parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Column parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Column parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Column parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.apache.inlong.sort.formats.binlog.InLongBinlog.Column prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code org.apache.inlong.sort.formats.binlog.Column}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder<Builder>
       implements org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_Column_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_Column_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.class, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder.class);
      }

      // Construct using org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          getPropsFieldBuilder();
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        index_ = 0;
        bitField0_ = (bitField0_ & ~0x00000001);
        sqlType_ = 0;
        bitField0_ = (bitField0_ & ~0x00000002);
        name_ = "";
        bitField0_ = (bitField0_ & ~0x00000004);
        isKey_ = false;
        bitField0_ = (bitField0_ & ~0x00000008);
        updated_ = false;
        bitField0_ = (bitField0_ & ~0x00000010);
        isNull_ = false;
        bitField0_ = (bitField0_ & ~0x00000020);
        if (propsBuilder_ == null) {
          props_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000040);
        } else {
          propsBuilder_.clear();
        }
        value_ = "";
        bitField0_ = (bitField0_ & ~0x00000080);
        length_ = 0;
        bitField0_ = (bitField0_ & ~0x00000100);
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_Column_descriptor;
      }

      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column getDefaultInstanceForType() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.getDefaultInstance();
      }

      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column build() {
        org.apache.inlong.sort.formats.binlog.InLongBinlog.Column result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column buildPartial() {
        org.apache.inlong.sort.formats.binlog.InLongBinlog.Column result = new org.apache.inlong.sort.formats.binlog.InLongBinlog.Column(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
          to_bitField0_ |= 0x00000001;
        }
        result.index_ = index_;
        if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
          to_bitField0_ |= 0x00000002;
        }
        result.sqlType_ = sqlType_;
        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
          to_bitField0_ |= 0x00000004;
        }
        result.name_ = name_;
        if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
          to_bitField0_ |= 0x00000008;
        }
        result.isKey_ = isKey_;
        if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
          to_bitField0_ |= 0x00000010;
        }
        result.updated_ = updated_;
        if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
          to_bitField0_ |= 0x00000020;
        }
        result.isNull_ = isNull_;
        if (propsBuilder_ == null) {
          if (((bitField0_ & 0x00000040) == 0x00000040)) {
            props_ = java.util.Collections.unmodifiableList(props_);
            bitField0_ = (bitField0_ & ~0x00000040);
          }
          result.props_ = props_;
        } else {
          result.props_ = propsBuilder_.build();
        }
        if (((from_bitField0_ & 0x00000080) == 0x00000080)) {
          to_bitField0_ |= 0x00000040;
        }
        result.value_ = value_;
        if (((from_bitField0_ & 0x00000100) == 0x00000100)) {
          to_bitField0_ |= 0x00000080;
        }
        result.length_ = length_;
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.apache.inlong.sort.formats.binlog.InLongBinlog.Column) {
          return mergeFrom((org.apache.inlong.sort.formats.binlog.InLongBinlog.Column)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.apache.inlong.sort.formats.binlog.InLongBinlog.Column other) {
        if (other == org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.getDefaultInstance()) return this;
        if (other.hasIndex()) {
          setIndex(other.getIndex());
        }
        if (other.hasSqlType()) {
          setSqlType(other.getSqlType());
        }
        if (other.hasName()) {
          bitField0_ |= 0x00000004;
          name_ = other.name_;
          onChanged();
        }
        if (other.hasIsKey()) {
          setIsKey(other.getIsKey());
        }
        if (other.hasUpdated()) {
          setUpdated(other.getUpdated());
        }
        if (other.hasIsNull()) {
          setIsNull(other.getIsNull());
        }
        if (propsBuilder_ == null) {
          if (!other.props_.isEmpty()) {
            if (props_.isEmpty()) {
              props_ = other.props_;
              bitField0_ = (bitField0_ & ~0x00000040);
            } else {
              ensurePropsIsMutable();
              props_.addAll(other.props_);
            }
            onChanged();
          }
        } else {
          if (!other.props_.isEmpty()) {
            if (propsBuilder_.isEmpty()) {
              propsBuilder_.dispose();
              propsBuilder_ = null;
              props_ = other.props_;
              bitField0_ = (bitField0_ & ~0x00000040);
              propsBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getPropsFieldBuilder() : null;
            } else {
              propsBuilder_.addAllMessages(other.props_);
            }
          }
        }
        if (other.hasValue()) {
          bitField0_ |= 0x00000080;
          value_ = other.value_;
          onChanged();
        }
        if (other.hasLength()) {
          setLength(other.getLength());
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.apache.inlong.sort.formats.binlog.InLongBinlog.Column parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.apache.inlong.sort.formats.binlog.InLongBinlog.Column) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      // optional int32 index = 1;
      private int index_ ;
      /**
       * <code>optional int32 index = 1;</code>
       */
      public boolean hasIndex() {
        return ((bitField0_ & 0x00000001) == 0x00000001);
      }
      /**
       * <code>optional int32 index = 1;</code>
       */
      public int getIndex() {
        return index_;
      }
      /**
       * <code>optional int32 index = 1;</code>
       */
      public Builder setIndex(int value) {
        bitField0_ |= 0x00000001;
        index_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional int32 index = 1;</code>
       */
      public Builder clearIndex() {
        bitField0_ = (bitField0_ & ~0x00000001);
        index_ = 0;
        onChanged();
        return this;
      }

      // optional int32 sqlType = 2;
      private int sqlType_ ;
      /**
       * <code>optional int32 sqlType = 2;</code>
       */
      public boolean hasSqlType() {
        return ((bitField0_ & 0x00000002) == 0x00000002);
      }
      /**
       * <code>optional int32 sqlType = 2;</code>
       */
      public int getSqlType() {
        return sqlType_;
      }
      /**
       * <code>optional int32 sqlType = 2;</code>
       */
      public Builder setSqlType(int value) {
        bitField0_ |= 0x00000002;
        sqlType_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional int32 sqlType = 2;</code>
       */
      public Builder clearSqlType() {
        bitField0_ = (bitField0_ & ~0x00000002);
        sqlType_ = 0;
        onChanged();
        return this;
      }

      // optional string name = 3;
      private java.lang.Object name_ = "";
      /**
       * <code>optional string name = 3;</code>
       */
      public boolean hasName() {
        return ((bitField0_ & 0x00000004) == 0x00000004);
      }
      /**
       * <code>optional string name = 3;</code>
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          java.lang.String s = ((com.google.protobuf.ByteString) ref)
              .toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string name = 3;</code>
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string name = 3;</code>
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string name = 3;</code>
       */
      public Builder clearName() {
        bitField0_ = (bitField0_ & ~0x00000004);
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * <code>optional string name = 3;</code>
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        name_ = value;
        onChanged();
        return this;
      }

      // optional bool isKey = 4;
      private boolean isKey_ ;
      /**
       * <code>optional bool isKey = 4;</code>
       */
      public boolean hasIsKey() {
        return ((bitField0_ & 0x00000008) == 0x00000008);
      }
      /**
       * <code>optional bool isKey = 4;</code>
       */
      public boolean getIsKey() {
        return isKey_;
      }
      /**
       * <code>optional bool isKey = 4;</code>
       */
      public Builder setIsKey(boolean value) {
        bitField0_ |= 0x00000008;
        isKey_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool isKey = 4;</code>
       */
      public Builder clearIsKey() {
        bitField0_ = (bitField0_ & ~0x00000008);
        isKey_ = false;
        onChanged();
        return this;
      }

      // optional bool updated = 5;
      private boolean updated_ ;
      /**
       * <code>optional bool updated = 5;</code>
       */
      public boolean hasUpdated() {
        return ((bitField0_ & 0x00000010) == 0x00000010);
      }
      /**
       * <code>optional bool updated = 5;</code>
       */
      public boolean getUpdated() {
        return updated_;
      }
      /**
       * <code>optional bool updated = 5;</code>
       */
      public Builder setUpdated(boolean value) {
        bitField0_ |= 0x00000010;
        updated_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool updated = 5;</code>
       */
      public Builder clearUpdated() {
        bitField0_ = (bitField0_ & ~0x00000010);
        updated_ = false;
        onChanged();
        return this;
      }

      // optional bool isNull = 6 [default = false];
      private boolean isNull_ ;
      /**
       * <code>optional bool isNull = 6 [default = false];</code>
       */
      public boolean hasIsNull() {
        return ((bitField0_ & 0x00000020) == 0x00000020);
      }
      /**
       * <code>optional bool isNull = 6 [default = false];</code>
       */
      public boolean getIsNull() {
        return isNull_;
      }
      /**
       * <code>optional bool isNull = 6 [default = false];</code>
       */
      public Builder setIsNull(boolean value) {
        bitField0_ |= 0x00000020;
        isNull_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool isNull = 6 [default = false];</code>
       */
      public Builder clearIsNull() {
        bitField0_ = (bitField0_ & ~0x00000020);
        isNull_ = false;
        onChanged();
        return this;
      }

      // repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;
      private java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> props_ =
        java.util.Collections.emptyList();
      private void ensurePropsIsMutable() {
        if (!((bitField0_ & 0x00000040) == 0x00000040)) {
          props_ = new java.util.ArrayList<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair>(props_);
          bitField0_ |= 0x00000040;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder> propsBuilder_;

      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> getPropsList() {
        if (propsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(props_);
        } else {
          return propsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public int getPropsCount() {
        if (propsBuilder_ == null) {
          return props_.size();
        } else {
          return propsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair getProps(int index) {
        if (propsBuilder_ == null) {
          return props_.get(index);
        } else {
          return propsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public Builder setProps(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair value) {
        if (propsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePropsIsMutable();
          props_.set(index, value);
          onChanged();
        } else {
          propsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public Builder setProps(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder builderForValue) {
        if (propsBuilder_ == null) {
          ensurePropsIsMutable();
          props_.set(index, builderForValue.build());
          onChanged();
        } else {
          propsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public Builder addProps(org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair value) {
        if (propsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePropsIsMutable();
          props_.add(value);
          onChanged();
        } else {
          propsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public Builder addProps(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair value) {
        if (propsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePropsIsMutable();
          props_.add(index, value);
          onChanged();
        } else {
          propsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public Builder addProps(
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder builderForValue) {
        if (propsBuilder_ == null) {
          ensurePropsIsMutable();
          props_.add(builderForValue.build());
          onChanged();
        } else {
          propsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public Builder addProps(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder builderForValue) {
        if (propsBuilder_ == null) {
          ensurePropsIsMutable();
          props_.add(index, builderForValue.build());
          onChanged();
        } else {
          propsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public Builder addAllProps(
          java.lang.Iterable<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> values) {
        if (propsBuilder_ == null) {
          ensurePropsIsMutable();
          super.addAll(values, props_);
          onChanged();
        } else {
          propsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public Builder clearProps() {
        if (propsBuilder_ == null) {
          props_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000040);
          onChanged();
        } else {
          propsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public Builder removeProps(int index) {
        if (propsBuilder_ == null) {
          ensurePropsIsMutable();
          props_.remove(index);
          onChanged();
        } else {
          propsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder getPropsBuilder(
          int index) {
        return getPropsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder getPropsOrBuilder(
          int index) {
        if (propsBuilder_ == null) {
          return props_.get(index);  } else {
          return propsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder> 
           getPropsOrBuilderList() {
        if (propsBuilder_ != null) {
          return propsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(props_);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder addPropsBuilder() {
        return getPropsFieldBuilder().addBuilder(
            org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.getDefaultInstance());
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder addPropsBuilder(
          int index) {
        return getPropsFieldBuilder().addBuilder(
            index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.getDefaultInstance());
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 7;</code>
       */
      public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder> 
           getPropsBuilderList() {
        return getPropsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder> 
          getPropsFieldBuilder() {
        if (propsBuilder_ == null) {
          propsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder>(
                  props_,
                  ((bitField0_ & 0x00000040) == 0x00000040),
                  getParentForChildren(),
                  isClean());
          props_ = null;
        }
        return propsBuilder_;
      }

      // optional string value = 8;
      private java.lang.Object value_ = "";
      /**
       * <code>optional string value = 8;</code>
       */
      public boolean hasValue() {
        return ((bitField0_ & 0x00000080) == 0x00000080);
      }
      /**
       * <code>optional string value = 8;</code>
       */
      public java.lang.String getValue() {
        java.lang.Object ref = value_;
        if (!(ref instanceof java.lang.String)) {
          java.lang.String s = ((com.google.protobuf.ByteString) ref)
              .toStringUtf8();
          value_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string value = 8;</code>
       */
      public com.google.protobuf.ByteString
          getValueBytes() {
        java.lang.Object ref = value_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          value_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string value = 8;</code>
       */
      public Builder setValue(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000080;
        value_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string value = 8;</code>
       */
      public Builder clearValue() {
        bitField0_ = (bitField0_ & ~0x00000080);
        value_ = getDefaultInstance().getValue();
        onChanged();
        return this;
      }
      /**
       * <code>optional string value = 8;</code>
       */
      public Builder setValueBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000080;
        value_ = value;
        onChanged();
        return this;
      }

      // optional int32 length = 9;
      private int length_ ;
      /**
       * <code>optional int32 length = 9;</code>
       */
      public boolean hasLength() {
        return ((bitField0_ & 0x00000100) == 0x00000100);
      }
      /**
       * <code>optional int32 length = 9;</code>
       */
      public int getLength() {
        return length_;
      }
      /**
       * <code>optional int32 length = 9;</code>
       */
      public Builder setLength(int value) {
        bitField0_ |= 0x00000100;
        length_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional int32 length = 9;</code>
       */
      public Builder clearLength() {
        bitField0_ = (bitField0_ & ~0x00000100);
        length_ = 0;
        onChanged();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:org.apache.inlong.sort.formats.binlog.Column)
    }

    static {
      defaultInstance = new Column(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:org.apache.inlong.sort.formats.binlog.Column)
  }

  public interface RowDataOrBuilder
      extends com.google.protobuf.MessageOrBuilder {

    // repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
     */
    java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> 
        getBeforeColumnsList();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
     */
    org.apache.inlong.sort.formats.binlog.InLongBinlog.Column getBeforeColumns(int index);
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
     */
    int getBeforeColumnsCount();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
     */
    java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder> 
        getBeforeColumnsOrBuilderList();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
     */
    org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder getBeforeColumnsOrBuilder(
        int index);

    // repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
     */
    java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> 
        getAfterColumnsList();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
     */
    org.apache.inlong.sort.formats.binlog.InLongBinlog.Column getAfterColumns(int index);
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
     */
    int getAfterColumnsCount();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
     */
    java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder> 
        getAfterColumnsOrBuilderList();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
     */
    org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder getAfterColumnsOrBuilder(
        int index);

    // repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
     */
    java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> 
        getPropsList();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
     */
    org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair getProps(int index);
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
     */
    int getPropsCount();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
     */
    java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder> 
        getPropsOrBuilderList();
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
     */
    org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder getPropsOrBuilder(
        int index);

    // optional string instanceName = 4;
    /**
     * <code>optional string instanceName = 4;</code>
     */
    boolean hasInstanceName();
    /**
     * <code>optional string instanceName = 4;</code>
     */
    java.lang.String getInstanceName();
    /**
     * <code>optional string instanceName = 4;</code>
     */
    com.google.protobuf.ByteString
        getInstanceNameBytes();

    // optional string schemaName = 5;
    /**
     * <code>optional string schemaName = 5;</code>
     */
    boolean hasSchemaName();
    /**
     * <code>optional string schemaName = 5;</code>
     */
    java.lang.String getSchemaName();
    /**
     * <code>optional string schemaName = 5;</code>
     */
    com.google.protobuf.ByteString
        getSchemaNameBytes();

    // optional string tableName = 6;
    /**
     * <code>optional string tableName = 6;</code>
     */
    boolean hasTableName();
    /**
     * <code>optional string tableName = 6;</code>
     */
    java.lang.String getTableName();
    /**
     * <code>optional string tableName = 6;</code>
     */
    com.google.protobuf.ByteString
        getTableNameBytes();

    // optional .org.apache.inlong.sort.formats.binlog.EventType eventType = 7 [default = UPDATE];
    /**
     * <code>optional .org.apache.inlong.sort.formats.binlog.EventType eventType = 7 [default = UPDATE];</code>
     */
    boolean hasEventType();
    /**
     * <code>optional .org.apache.inlong.sort.formats.binlog.EventType eventType = 7 [default = UPDATE];</code>
     */
    org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType getEventType();

    // optional int64 executeTime = 8;
    /**
     * <code>optional int64 executeTime = 8;</code>
     */
    boolean hasExecuteTime();
    /**
     * <code>optional int64 executeTime = 8;</code>
     */
    long getExecuteTime();

    // optional int64 executeOrder = 9;
    /**
     * <code>optional int64 executeOrder = 9;</code>
     */
    boolean hasExecuteOrder();
    /**
     * <code>optional int64 executeOrder = 9;</code>
     */
    long getExecuteOrder();

    // optional string transferIp = 10;
    /**
     * <code>optional string transferIp = 10;</code>
     */
    boolean hasTransferIp();
    /**
     * <code>optional string transferIp = 10;</code>
     */
    java.lang.String getTransferIp();
    /**
     * <code>optional string transferIp = 10;</code>
     */
    com.google.protobuf.ByteString
        getTransferIpBytes();
  }
  /**
   * Protobuf type {@code org.apache.inlong.sort.formats.binlog.RowData}
   */
  public static final class RowData extends
      com.google.protobuf.GeneratedMessage
      implements RowDataOrBuilder {
    // Use RowData.newBuilder() to construct.
    private RowData(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private RowData(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final RowData defaultInstance;
    public static RowData getDefaultInstance() {
      return defaultInstance;
    }

    public RowData getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private RowData(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                beforeColumns_ = new java.util.ArrayList<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column>();
                mutable_bitField0_ |= 0x00000001;
              }
              beforeColumns_.add(input.readMessage(org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.PARSER, extensionRegistry));
              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                afterColumns_ = new java.util.ArrayList<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column>();
                mutable_bitField0_ |= 0x00000002;
              }
              afterColumns_.add(input.readMessage(org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.PARSER, extensionRegistry));
              break;
            }
            case 26: {
              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
                props_ = new java.util.ArrayList<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair>();
                mutable_bitField0_ |= 0x00000004;
              }
              props_.add(input.readMessage(org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.PARSER, extensionRegistry));
              break;
            }
            case 34: {
              bitField0_ |= 0x00000001;
              instanceName_ = input.readBytes();
              break;
            }
            case 42: {
              bitField0_ |= 0x00000002;
              schemaName_ = input.readBytes();
              break;
            }
            case 50: {
              bitField0_ |= 0x00000004;
              tableName_ = input.readBytes();
              break;
            }
            case 56: {
              int rawValue = input.readEnum();
              org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType value = org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType.valueOf(rawValue);
              if (value == null) {
                unknownFields.mergeVarintField(7, rawValue);
              } else {
                bitField0_ |= 0x00000008;
                eventType_ = value;
              }
              break;
            }
            case 64: {
              bitField0_ |= 0x00000010;
              executeTime_ = input.readInt64();
              break;
            }
            case 72: {
              bitField0_ |= 0x00000020;
              executeOrder_ = input.readInt64();
              break;
            }
            case 82: {
              bitField0_ |= 0x00000040;
              transferIp_ = input.readBytes();
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
          beforeColumns_ = java.util.Collections.unmodifiableList(beforeColumns_);
        }
        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
          afterColumns_ = java.util.Collections.unmodifiableList(afterColumns_);
        }
        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
          props_ = java.util.Collections.unmodifiableList(props_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_RowData_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_RowData_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData.class, org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData.Builder.class);
    }

    public static com.google.protobuf.Parser<RowData> PARSER =
        new com.google.protobuf.AbstractParser<RowData>() {
      public RowData parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new RowData(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser<RowData> getParserForType() {
      return PARSER;
    }

    private int bitField0_;
    // repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;
    public static final int BEFORECOLUMNS_FIELD_NUMBER = 1;
    private java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> beforeColumns_;
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
     */
    public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> getBeforeColumnsList() {
      return beforeColumns_;
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
     */
    public java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder> 
        getBeforeColumnsOrBuilderList() {
      return beforeColumns_;
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
     */
    public int getBeforeColumnsCount() {
      return beforeColumns_.size();
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
     */
    public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column getBeforeColumns(int index) {
      return beforeColumns_.get(index);
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
     */
    public org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder getBeforeColumnsOrBuilder(
        int index) {
      return beforeColumns_.get(index);
    }

    // repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;
    public static final int AFTERCOLUMNS_FIELD_NUMBER = 2;
    private java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> afterColumns_;
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
     */
    public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> getAfterColumnsList() {
      return afterColumns_;
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
     */
    public java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder> 
        getAfterColumnsOrBuilderList() {
      return afterColumns_;
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
     */
    public int getAfterColumnsCount() {
      return afterColumns_.size();
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
     */
    public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column getAfterColumns(int index) {
      return afterColumns_.get(index);
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
     */
    public org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder getAfterColumnsOrBuilder(
        int index) {
      return afterColumns_.get(index);
    }

    // repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;
    public static final int PROPS_FIELD_NUMBER = 3;
    private java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> props_;
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
     */
    public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> getPropsList() {
      return props_;
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
     */
    public java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder> 
        getPropsOrBuilderList() {
      return props_;
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
     */
    public int getPropsCount() {
      return props_.size();
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
     */
    public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair getProps(int index) {
      return props_.get(index);
    }
    /**
     * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
     */
    public org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder getPropsOrBuilder(
        int index) {
      return props_.get(index);
    }

    // optional string instanceName = 4;
    public static final int INSTANCENAME_FIELD_NUMBER = 4;
    private java.lang.Object instanceName_;
    /**
     * <code>optional string instanceName = 4;</code>
     */
    public boolean hasInstanceName() {
      return ((bitField0_ & 0x00000001) == 0x00000001);
    }
    /**
     * <code>optional string instanceName = 4;</code>
     */
    public java.lang.String getInstanceName() {
      java.lang.Object ref = instanceName_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          instanceName_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string instanceName = 4;</code>
     */
    public com.google.protobuf.ByteString
        getInstanceNameBytes() {
      java.lang.Object ref = instanceName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        instanceName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    // optional string schemaName = 5;
    public static final int SCHEMANAME_FIELD_NUMBER = 5;
    private java.lang.Object schemaName_;
    /**
     * <code>optional string schemaName = 5;</code>
     */
    public boolean hasSchemaName() {
      return ((bitField0_ & 0x00000002) == 0x00000002);
    }
    /**
     * <code>optional string schemaName = 5;</code>
     */
    public java.lang.String getSchemaName() {
      java.lang.Object ref = schemaName_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          schemaName_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string schemaName = 5;</code>
     */
    public com.google.protobuf.ByteString
        getSchemaNameBytes() {
      java.lang.Object ref = schemaName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        schemaName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    // optional string tableName = 6;
    public static final int TABLENAME_FIELD_NUMBER = 6;
    private java.lang.Object tableName_;
    /**
     * <code>optional string tableName = 6;</code>
     */
    public boolean hasTableName() {
      return ((bitField0_ & 0x00000004) == 0x00000004);
    }
    /**
     * <code>optional string tableName = 6;</code>
     */
    public java.lang.String getTableName() {
      java.lang.Object ref = tableName_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          tableName_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string tableName = 6;</code>
     */
    public com.google.protobuf.ByteString
        getTableNameBytes() {
      java.lang.Object ref = tableName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        tableName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    // optional .org.apache.inlong.sort.formats.binlog.EventType eventType = 7 [default = UPDATE];
    public static final int EVENTTYPE_FIELD_NUMBER = 7;
    private org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType eventType_;
    /**
     * <code>optional .org.apache.inlong.sort.formats.binlog.EventType eventType = 7 [default = UPDATE];</code>
     */
    public boolean hasEventType() {
      return ((bitField0_ & 0x00000008) == 0x00000008);
    }
    /**
     * <code>optional .org.apache.inlong.sort.formats.binlog.EventType eventType = 7 [default = UPDATE];</code>
     */
    public org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType getEventType() {
      return eventType_;
    }

    // optional int64 executeTime = 8;
    public static final int EXECUTETIME_FIELD_NUMBER = 8;
    private long executeTime_;
    /**
     * <code>optional int64 executeTime = 8;</code>
     */
    public boolean hasExecuteTime() {
      return ((bitField0_ & 0x00000010) == 0x00000010);
    }
    /**
     * <code>optional int64 executeTime = 8;</code>
     */
    public long getExecuteTime() {
      return executeTime_;
    }

    // optional int64 executeOrder = 9;
    public static final int EXECUTEORDER_FIELD_NUMBER = 9;
    private long executeOrder_;
    /**
     * <code>optional int64 executeOrder = 9;</code>
     */
    public boolean hasExecuteOrder() {
      return ((bitField0_ & 0x00000020) == 0x00000020);
    }
    /**
     * <code>optional int64 executeOrder = 9;</code>
     */
    public long getExecuteOrder() {
      return executeOrder_;
    }

    // optional string transferIp = 10;
    public static final int TRANSFERIP_FIELD_NUMBER = 10;
    private java.lang.Object transferIp_;
    /**
     * <code>optional string transferIp = 10;</code>
     */
    public boolean hasTransferIp() {
      return ((bitField0_ & 0x00000040) == 0x00000040);
    }
    /**
     * <code>optional string transferIp = 10;</code>
     */
    public java.lang.String getTransferIp() {
      java.lang.Object ref = transferIp_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          transferIp_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string transferIp = 10;</code>
     */
    public com.google.protobuf.ByteString
        getTransferIpBytes() {
      java.lang.Object ref = transferIp_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        transferIp_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private void initFields() {
      beforeColumns_ = java.util.Collections.emptyList();
      afterColumns_ = java.util.Collections.emptyList();
      props_ = java.util.Collections.emptyList();
      instanceName_ = "";
      schemaName_ = "";
      tableName_ = "";
      eventType_ = org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType.UPDATE;
      executeTime_ = 0L;
      executeOrder_ = 0L;
      transferIp_ = "";
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized != -1) return isInitialized == 1;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      for (int i = 0; i < beforeColumns_.size(); i++) {
        output.writeMessage(1, beforeColumns_.get(i));
      }
      for (int i = 0; i < afterColumns_.size(); i++) {
        output.writeMessage(2, afterColumns_.get(i));
      }
      for (int i = 0; i < props_.size(); i++) {
        output.writeMessage(3, props_.get(i));
      }
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        output.writeBytes(4, getInstanceNameBytes());
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        output.writeBytes(5, getSchemaNameBytes());
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        output.writeBytes(6, getTableNameBytes());
      }
      if (((bitField0_ & 0x00000008) == 0x00000008)) {
        output.writeEnum(7, eventType_.getNumber());
      }
      if (((bitField0_ & 0x00000010) == 0x00000010)) {
        output.writeInt64(8, executeTime_);
      }
      if (((bitField0_ & 0x00000020) == 0x00000020)) {
        output.writeInt64(9, executeOrder_);
      }
      if (((bitField0_ & 0x00000040) == 0x00000040)) {
        output.writeBytes(10, getTransferIpBytes());
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < beforeColumns_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, beforeColumns_.get(i));
      }
      for (int i = 0; i < afterColumns_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, afterColumns_.get(i));
      }
      for (int i = 0; i < props_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, props_.get(i));
      }
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(4, getInstanceNameBytes());
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(5, getSchemaNameBytes());
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(6, getTableNameBytes());
      }
      if (((bitField0_ & 0x00000008) == 0x00000008)) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(7, eventType_.getNumber());
      }
      if (((bitField0_ & 0x00000010) == 0x00000010)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(8, executeTime_);
      }
      if (((bitField0_ & 0x00000020) == 0x00000020)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(9, executeOrder_);
      }
      if (((bitField0_ & 0x00000040) == 0x00000040)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(10, getTransferIpBytes());
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code org.apache.inlong.sort.formats.binlog.RowData}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder<Builder>
       implements org.apache.inlong.sort.formats.binlog.InLongBinlog.RowDataOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_RowData_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_RowData_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData.class, org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData.Builder.class);
      }

      // Construct using org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          getBeforeColumnsFieldBuilder();
          getAfterColumnsFieldBuilder();
          getPropsFieldBuilder();
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        if (beforeColumnsBuilder_ == null) {
          beforeColumns_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          beforeColumnsBuilder_.clear();
        }
        if (afterColumnsBuilder_ == null) {
          afterColumns_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          afterColumnsBuilder_.clear();
        }
        if (propsBuilder_ == null) {
          props_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
        } else {
          propsBuilder_.clear();
        }
        instanceName_ = "";
        bitField0_ = (bitField0_ & ~0x00000008);
        schemaName_ = "";
        bitField0_ = (bitField0_ & ~0x00000010);
        tableName_ = "";
        bitField0_ = (bitField0_ & ~0x00000020);
        eventType_ = org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType.UPDATE;
        bitField0_ = (bitField0_ & ~0x00000040);
        executeTime_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000080);
        executeOrder_ = 0L;
        bitField0_ = (bitField0_ & ~0x00000100);
        transferIp_ = "";
        bitField0_ = (bitField0_ & ~0x00000200);
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_RowData_descriptor;
      }

      public org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData getDefaultInstanceForType() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData.getDefaultInstance();
      }

      public org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData build() {
        org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData buildPartial() {
        org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData result = new org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (beforeColumnsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            beforeColumns_ = java.util.Collections.unmodifiableList(beforeColumns_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.beforeColumns_ = beforeColumns_;
        } else {
          result.beforeColumns_ = beforeColumnsBuilder_.build();
        }
        if (afterColumnsBuilder_ == null) {
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            afterColumns_ = java.util.Collections.unmodifiableList(afterColumns_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.afterColumns_ = afterColumns_;
        } else {
          result.afterColumns_ = afterColumnsBuilder_.build();
        }
        if (propsBuilder_ == null) {
          if (((bitField0_ & 0x00000004) == 0x00000004)) {
            props_ = java.util.Collections.unmodifiableList(props_);
            bitField0_ = (bitField0_ & ~0x00000004);
          }
          result.props_ = props_;
        } else {
          result.props_ = propsBuilder_.build();
        }
        if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
          to_bitField0_ |= 0x00000001;
        }
        result.instanceName_ = instanceName_;
        if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
          to_bitField0_ |= 0x00000002;
        }
        result.schemaName_ = schemaName_;
        if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
          to_bitField0_ |= 0x00000004;
        }
        result.tableName_ = tableName_;
        if (((from_bitField0_ & 0x00000040) == 0x00000040)) {
          to_bitField0_ |= 0x00000008;
        }
        result.eventType_ = eventType_;
        if (((from_bitField0_ & 0x00000080) == 0x00000080)) {
          to_bitField0_ |= 0x00000010;
        }
        result.executeTime_ = executeTime_;
        if (((from_bitField0_ & 0x00000100) == 0x00000100)) {
          to_bitField0_ |= 0x00000020;
        }
        result.executeOrder_ = executeOrder_;
        if (((from_bitField0_ & 0x00000200) == 0x00000200)) {
          to_bitField0_ |= 0x00000040;
        }
        result.transferIp_ = transferIp_;
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData) {
          return mergeFrom((org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData other) {
        if (other == org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData.getDefaultInstance()) return this;
        if (beforeColumnsBuilder_ == null) {
          if (!other.beforeColumns_.isEmpty()) {
            if (beforeColumns_.isEmpty()) {
              beforeColumns_ = other.beforeColumns_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureBeforeColumnsIsMutable();
              beforeColumns_.addAll(other.beforeColumns_);
            }
            onChanged();
          }
        } else {
          if (!other.beforeColumns_.isEmpty()) {
            if (beforeColumnsBuilder_.isEmpty()) {
              beforeColumnsBuilder_.dispose();
              beforeColumnsBuilder_ = null;
              beforeColumns_ = other.beforeColumns_;
              bitField0_ = (bitField0_ & ~0x00000001);
              beforeColumnsBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getBeforeColumnsFieldBuilder() : null;
            } else {
              beforeColumnsBuilder_.addAllMessages(other.beforeColumns_);
            }
          }
        }
        if (afterColumnsBuilder_ == null) {
          if (!other.afterColumns_.isEmpty()) {
            if (afterColumns_.isEmpty()) {
              afterColumns_ = other.afterColumns_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureAfterColumnsIsMutable();
              afterColumns_.addAll(other.afterColumns_);
            }
            onChanged();
          }
        } else {
          if (!other.afterColumns_.isEmpty()) {
            if (afterColumnsBuilder_.isEmpty()) {
              afterColumnsBuilder_.dispose();
              afterColumnsBuilder_ = null;
              afterColumns_ = other.afterColumns_;
              bitField0_ = (bitField0_ & ~0x00000002);
              afterColumnsBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getAfterColumnsFieldBuilder() : null;
            } else {
              afterColumnsBuilder_.addAllMessages(other.afterColumns_);
            }
          }
        }
        if (propsBuilder_ == null) {
          if (!other.props_.isEmpty()) {
            if (props_.isEmpty()) {
              props_ = other.props_;
              bitField0_ = (bitField0_ & ~0x00000004);
            } else {
              ensurePropsIsMutable();
              props_.addAll(other.props_);
            }
            onChanged();
          }
        } else {
          if (!other.props_.isEmpty()) {
            if (propsBuilder_.isEmpty()) {
              propsBuilder_.dispose();
              propsBuilder_ = null;
              props_ = other.props_;
              bitField0_ = (bitField0_ & ~0x00000004);
              propsBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getPropsFieldBuilder() : null;
            } else {
              propsBuilder_.addAllMessages(other.props_);
            }
          }
        }
        if (other.hasInstanceName()) {
          bitField0_ |= 0x00000008;
          instanceName_ = other.instanceName_;
          onChanged();
        }
        if (other.hasSchemaName()) {
          bitField0_ |= 0x00000010;
          schemaName_ = other.schemaName_;
          onChanged();
        }
        if (other.hasTableName()) {
          bitField0_ |= 0x00000020;
          tableName_ = other.tableName_;
          onChanged();
        }
        if (other.hasEventType()) {
          setEventType(other.getEventType());
        }
        if (other.hasExecuteTime()) {
          setExecuteTime(other.getExecuteTime());
        }
        if (other.hasExecuteOrder()) {
          setExecuteOrder(other.getExecuteOrder());
        }
        if (other.hasTransferIp()) {
          bitField0_ |= 0x00000200;
          transferIp_ = other.transferIp_;
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.apache.inlong.sort.formats.binlog.InLongBinlog.RowData) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      // repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;
      private java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> beforeColumns_ =
        java.util.Collections.emptyList();
      private void ensureBeforeColumnsIsMutable() {
        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
          beforeColumns_ = new java.util.ArrayList<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column>(beforeColumns_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Column, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder> beforeColumnsBuilder_;

      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> getBeforeColumnsList() {
        if (beforeColumnsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(beforeColumns_);
        } else {
          return beforeColumnsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public int getBeforeColumnsCount() {
        if (beforeColumnsBuilder_ == null) {
          return beforeColumns_.size();
        } else {
          return beforeColumnsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column getBeforeColumns(int index) {
        if (beforeColumnsBuilder_ == null) {
          return beforeColumns_.get(index);
        } else {
          return beforeColumnsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public Builder setBeforeColumns(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column value) {
        if (beforeColumnsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBeforeColumnsIsMutable();
          beforeColumns_.set(index, value);
          onChanged();
        } else {
          beforeColumnsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public Builder setBeforeColumns(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder builderForValue) {
        if (beforeColumnsBuilder_ == null) {
          ensureBeforeColumnsIsMutable();
          beforeColumns_.set(index, builderForValue.build());
          onChanged();
        } else {
          beforeColumnsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public Builder addBeforeColumns(org.apache.inlong.sort.formats.binlog.InLongBinlog.Column value) {
        if (beforeColumnsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBeforeColumnsIsMutable();
          beforeColumns_.add(value);
          onChanged();
        } else {
          beforeColumnsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public Builder addBeforeColumns(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column value) {
        if (beforeColumnsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBeforeColumnsIsMutable();
          beforeColumns_.add(index, value);
          onChanged();
        } else {
          beforeColumnsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public Builder addBeforeColumns(
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder builderForValue) {
        if (beforeColumnsBuilder_ == null) {
          ensureBeforeColumnsIsMutable();
          beforeColumns_.add(builderForValue.build());
          onChanged();
        } else {
          beforeColumnsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public Builder addBeforeColumns(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder builderForValue) {
        if (beforeColumnsBuilder_ == null) {
          ensureBeforeColumnsIsMutable();
          beforeColumns_.add(index, builderForValue.build());
          onChanged();
        } else {
          beforeColumnsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public Builder addAllBeforeColumns(
          java.lang.Iterable<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> values) {
        if (beforeColumnsBuilder_ == null) {
          ensureBeforeColumnsIsMutable();
          super.addAll(values, beforeColumns_);
          onChanged();
        } else {
          beforeColumnsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public Builder clearBeforeColumns() {
        if (beforeColumnsBuilder_ == null) {
          beforeColumns_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          beforeColumnsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public Builder removeBeforeColumns(int index) {
        if (beforeColumnsBuilder_ == null) {
          ensureBeforeColumnsIsMutable();
          beforeColumns_.remove(index);
          onChanged();
        } else {
          beforeColumnsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder getBeforeColumnsBuilder(
          int index) {
        return getBeforeColumnsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder getBeforeColumnsOrBuilder(
          int index) {
        if (beforeColumnsBuilder_ == null) {
          return beforeColumns_.get(index);  } else {
          return beforeColumnsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder> 
           getBeforeColumnsOrBuilderList() {
        if (beforeColumnsBuilder_ != null) {
          return beforeColumnsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(beforeColumns_);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder addBeforeColumnsBuilder() {
        return getBeforeColumnsFieldBuilder().addBuilder(
            org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.getDefaultInstance());
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder addBeforeColumnsBuilder(
          int index) {
        return getBeforeColumnsFieldBuilder().addBuilder(
            index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.getDefaultInstance());
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column beforeColumns = 1;</code>
       */
      public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder> 
           getBeforeColumnsBuilderList() {
        return getBeforeColumnsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Column, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder> 
          getBeforeColumnsFieldBuilder() {
        if (beforeColumnsBuilder_ == null) {
          beforeColumnsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.apache.inlong.sort.formats.binlog.InLongBinlog.Column, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder>(
                  beforeColumns_,
                  ((bitField0_ & 0x00000001) == 0x00000001),
                  getParentForChildren(),
                  isClean());
          beforeColumns_ = null;
        }
        return beforeColumnsBuilder_;
      }

      // repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;
      private java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> afterColumns_ =
        java.util.Collections.emptyList();
      private void ensureAfterColumnsIsMutable() {
        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
          afterColumns_ = new java.util.ArrayList<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column>(afterColumns_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Column, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder> afterColumnsBuilder_;

      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> getAfterColumnsList() {
        if (afterColumnsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(afterColumns_);
        } else {
          return afterColumnsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public int getAfterColumnsCount() {
        if (afterColumnsBuilder_ == null) {
          return afterColumns_.size();
        } else {
          return afterColumnsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column getAfterColumns(int index) {
        if (afterColumnsBuilder_ == null) {
          return afterColumns_.get(index);
        } else {
          return afterColumnsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public Builder setAfterColumns(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column value) {
        if (afterColumnsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureAfterColumnsIsMutable();
          afterColumns_.set(index, value);
          onChanged();
        } else {
          afterColumnsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public Builder setAfterColumns(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder builderForValue) {
        if (afterColumnsBuilder_ == null) {
          ensureAfterColumnsIsMutable();
          afterColumns_.set(index, builderForValue.build());
          onChanged();
        } else {
          afterColumnsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public Builder addAfterColumns(org.apache.inlong.sort.formats.binlog.InLongBinlog.Column value) {
        if (afterColumnsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureAfterColumnsIsMutable();
          afterColumns_.add(value);
          onChanged();
        } else {
          afterColumnsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public Builder addAfterColumns(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column value) {
        if (afterColumnsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureAfterColumnsIsMutable();
          afterColumns_.add(index, value);
          onChanged();
        } else {
          afterColumnsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public Builder addAfterColumns(
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder builderForValue) {
        if (afterColumnsBuilder_ == null) {
          ensureAfterColumnsIsMutable();
          afterColumns_.add(builderForValue.build());
          onChanged();
        } else {
          afterColumnsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public Builder addAfterColumns(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder builderForValue) {
        if (afterColumnsBuilder_ == null) {
          ensureAfterColumnsIsMutable();
          afterColumns_.add(index, builderForValue.build());
          onChanged();
        } else {
          afterColumnsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public Builder addAllAfterColumns(
          java.lang.Iterable<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.Column> values) {
        if (afterColumnsBuilder_ == null) {
          ensureAfterColumnsIsMutable();
          super.addAll(values, afterColumns_);
          onChanged();
        } else {
          afterColumnsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public Builder clearAfterColumns() {
        if (afterColumnsBuilder_ == null) {
          afterColumns_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          afterColumnsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public Builder removeAfterColumns(int index) {
        if (afterColumnsBuilder_ == null) {
          ensureAfterColumnsIsMutable();
          afterColumns_.remove(index);
          onChanged();
        } else {
          afterColumnsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder getAfterColumnsBuilder(
          int index) {
        return getAfterColumnsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder getAfterColumnsOrBuilder(
          int index) {
        if (afterColumnsBuilder_ == null) {
          return afterColumns_.get(index);  } else {
          return afterColumnsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder> 
           getAfterColumnsOrBuilderList() {
        if (afterColumnsBuilder_ != null) {
          return afterColumnsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(afterColumns_);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder addAfterColumnsBuilder() {
        return getAfterColumnsFieldBuilder().addBuilder(
            org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.getDefaultInstance());
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder addAfterColumnsBuilder(
          int index) {
        return getAfterColumnsFieldBuilder().addBuilder(
            index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.getDefaultInstance());
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Column afterColumns = 2;</code>
       */
      public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder> 
           getAfterColumnsBuilderList() {
        return getAfterColumnsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Column, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder> 
          getAfterColumnsFieldBuilder() {
        if (afterColumnsBuilder_ == null) {
          afterColumnsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.apache.inlong.sort.formats.binlog.InLongBinlog.Column, org.apache.inlong.sort.formats.binlog.InLongBinlog.Column.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.ColumnOrBuilder>(
                  afterColumns_,
                  ((bitField0_ & 0x00000002) == 0x00000002),
                  getParentForChildren(),
                  isClean());
          afterColumns_ = null;
        }
        return afterColumnsBuilder_;
      }

      // repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;
      private java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> props_ =
        java.util.Collections.emptyList();
      private void ensurePropsIsMutable() {
        if (!((bitField0_ & 0x00000004) == 0x00000004)) {
          props_ = new java.util.ArrayList<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair>(props_);
          bitField0_ |= 0x00000004;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder> propsBuilder_;

      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> getPropsList() {
        if (propsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(props_);
        } else {
          return propsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public int getPropsCount() {
        if (propsBuilder_ == null) {
          return props_.size();
        } else {
          return propsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair getProps(int index) {
        if (propsBuilder_ == null) {
          return props_.get(index);
        } else {
          return propsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public Builder setProps(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair value) {
        if (propsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePropsIsMutable();
          props_.set(index, value);
          onChanged();
        } else {
          propsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public Builder setProps(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder builderForValue) {
        if (propsBuilder_ == null) {
          ensurePropsIsMutable();
          props_.set(index, builderForValue.build());
          onChanged();
        } else {
          propsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public Builder addProps(org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair value) {
        if (propsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePropsIsMutable();
          props_.add(value);
          onChanged();
        } else {
          propsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public Builder addProps(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair value) {
        if (propsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensurePropsIsMutable();
          props_.add(index, value);
          onChanged();
        } else {
          propsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public Builder addProps(
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder builderForValue) {
        if (propsBuilder_ == null) {
          ensurePropsIsMutable();
          props_.add(builderForValue.build());
          onChanged();
        } else {
          propsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public Builder addProps(
          int index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder builderForValue) {
        if (propsBuilder_ == null) {
          ensurePropsIsMutable();
          props_.add(index, builderForValue.build());
          onChanged();
        } else {
          propsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public Builder addAllProps(
          java.lang.Iterable<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair> values) {
        if (propsBuilder_ == null) {
          ensurePropsIsMutable();
          super.addAll(values, props_);
          onChanged();
        } else {
          propsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public Builder clearProps() {
        if (propsBuilder_ == null) {
          props_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
        } else {
          propsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public Builder removeProps(int index) {
        if (propsBuilder_ == null) {
          ensurePropsIsMutable();
          props_.remove(index);
          onChanged();
        } else {
          propsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder getPropsBuilder(
          int index) {
        return getPropsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder getPropsOrBuilder(
          int index) {
        if (propsBuilder_ == null) {
          return props_.get(index);  } else {
          return propsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public java.util.List<? extends org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder> 
           getPropsOrBuilderList() {
        if (propsBuilder_ != null) {
          return propsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(props_);
        }
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder addPropsBuilder() {
        return getPropsFieldBuilder().addBuilder(
            org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.getDefaultInstance());
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder addPropsBuilder(
          int index) {
        return getPropsFieldBuilder().addBuilder(
            index, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.getDefaultInstance());
      }
      /**
       * <code>repeated .org.apache.inlong.sort.formats.binlog.Pair props = 3;</code>
       */
      public java.util.List<org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder> 
           getPropsBuilderList() {
        return getPropsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder> 
          getPropsFieldBuilder() {
        if (propsBuilder_ == null) {
          propsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder, org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder>(
                  props_,
                  ((bitField0_ & 0x00000004) == 0x00000004),
                  getParentForChildren(),
                  isClean());
          props_ = null;
        }
        return propsBuilder_;
      }

      // optional string instanceName = 4;
      private java.lang.Object instanceName_ = "";
      /**
       * <code>optional string instanceName = 4;</code>
       */
      public boolean hasInstanceName() {
        return ((bitField0_ & 0x00000008) == 0x00000008);
      }
      /**
       * <code>optional string instanceName = 4;</code>
       */
      public java.lang.String getInstanceName() {
        java.lang.Object ref = instanceName_;
        if (!(ref instanceof java.lang.String)) {
          java.lang.String s = ((com.google.protobuf.ByteString) ref)
              .toStringUtf8();
          instanceName_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string instanceName = 4;</code>
       */
      public com.google.protobuf.ByteString
          getInstanceNameBytes() {
        java.lang.Object ref = instanceName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          instanceName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string instanceName = 4;</code>
       */
      public Builder setInstanceName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000008;
        instanceName_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string instanceName = 4;</code>
       */
      public Builder clearInstanceName() {
        bitField0_ = (bitField0_ & ~0x00000008);
        instanceName_ = getDefaultInstance().getInstanceName();
        onChanged();
        return this;
      }
      /**
       * <code>optional string instanceName = 4;</code>
       */
      public Builder setInstanceNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000008;
        instanceName_ = value;
        onChanged();
        return this;
      }

      // optional string schemaName = 5;
      private java.lang.Object schemaName_ = "";
      /**
       * <code>optional string schemaName = 5;</code>
       */
      public boolean hasSchemaName() {
        return ((bitField0_ & 0x00000010) == 0x00000010);
      }
      /**
       * <code>optional string schemaName = 5;</code>
       */
      public java.lang.String getSchemaName() {
        java.lang.Object ref = schemaName_;
        if (!(ref instanceof java.lang.String)) {
          java.lang.String s = ((com.google.protobuf.ByteString) ref)
              .toStringUtf8();
          schemaName_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string schemaName = 5;</code>
       */
      public com.google.protobuf.ByteString
          getSchemaNameBytes() {
        java.lang.Object ref = schemaName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          schemaName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string schemaName = 5;</code>
       */
      public Builder setSchemaName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000010;
        schemaName_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string schemaName = 5;</code>
       */
      public Builder clearSchemaName() {
        bitField0_ = (bitField0_ & ~0x00000010);
        schemaName_ = getDefaultInstance().getSchemaName();
        onChanged();
        return this;
      }
      /**
       * <code>optional string schemaName = 5;</code>
       */
      public Builder setSchemaNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000010;
        schemaName_ = value;
        onChanged();
        return this;
      }

      // optional string tableName = 6;
      private java.lang.Object tableName_ = "";
      /**
       * <code>optional string tableName = 6;</code>
       */
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000020) == 0x00000020);
      }
      /**
       * <code>optional string tableName = 6;</code>
       */
      public java.lang.String getTableName() {
        java.lang.Object ref = tableName_;
        if (!(ref instanceof java.lang.String)) {
          java.lang.String s = ((com.google.protobuf.ByteString) ref)
              .toStringUtf8();
          tableName_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string tableName = 6;</code>
       */
      public com.google.protobuf.ByteString
          getTableNameBytes() {
        java.lang.Object ref = tableName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          tableName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string tableName = 6;</code>
       */
      public Builder setTableName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000020;
        tableName_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string tableName = 6;</code>
       */
      public Builder clearTableName() {
        bitField0_ = (bitField0_ & ~0x00000020);
        tableName_ = getDefaultInstance().getTableName();
        onChanged();
        return this;
      }
      /**
       * <code>optional string tableName = 6;</code>
       */
      public Builder setTableNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000020;
        tableName_ = value;
        onChanged();
        return this;
      }

      // optional .org.apache.inlong.sort.formats.binlog.EventType eventType = 7 [default = UPDATE];
      private org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType eventType_ = org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType.UPDATE;
      /**
       * <code>optional .org.apache.inlong.sort.formats.binlog.EventType eventType = 7 [default = UPDATE];</code>
       */
      public boolean hasEventType() {
        return ((bitField0_ & 0x00000040) == 0x00000040);
      }
      /**
       * <code>optional .org.apache.inlong.sort.formats.binlog.EventType eventType = 7 [default = UPDATE];</code>
       */
      public org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType getEventType() {
        return eventType_;
      }
      /**
       * <code>optional .org.apache.inlong.sort.formats.binlog.EventType eventType = 7 [default = UPDATE];</code>
       */
      public Builder setEventType(org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType value) {
        if (value == null) {
          throw new NullPointerException();
        }
        bitField0_ |= 0x00000040;
        eventType_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional .org.apache.inlong.sort.formats.binlog.EventType eventType = 7 [default = UPDATE];</code>
       */
      public Builder clearEventType() {
        bitField0_ = (bitField0_ & ~0x00000040);
        eventType_ = org.apache.inlong.sort.formats.binlog.InLongBinlog.EventType.UPDATE;
        onChanged();
        return this;
      }

      // optional int64 executeTime = 8;
      private long executeTime_ ;
      /**
       * <code>optional int64 executeTime = 8;</code>
       */
      public boolean hasExecuteTime() {
        return ((bitField0_ & 0x00000080) == 0x00000080);
      }
      /**
       * <code>optional int64 executeTime = 8;</code>
       */
      public long getExecuteTime() {
        return executeTime_;
      }
      /**
       * <code>optional int64 executeTime = 8;</code>
       */
      public Builder setExecuteTime(long value) {
        bitField0_ |= 0x00000080;
        executeTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional int64 executeTime = 8;</code>
       */
      public Builder clearExecuteTime() {
        bitField0_ = (bitField0_ & ~0x00000080);
        executeTime_ = 0L;
        onChanged();
        return this;
      }

      // optional int64 executeOrder = 9;
      private long executeOrder_ ;
      /**
       * <code>optional int64 executeOrder = 9;</code>
       */
      public boolean hasExecuteOrder() {
        return ((bitField0_ & 0x00000100) == 0x00000100);
      }
      /**
       * <code>optional int64 executeOrder = 9;</code>
       */
      public long getExecuteOrder() {
        return executeOrder_;
      }
      /**
       * <code>optional int64 executeOrder = 9;</code>
       */
      public Builder setExecuteOrder(long value) {
        bitField0_ |= 0x00000100;
        executeOrder_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional int64 executeOrder = 9;</code>
       */
      public Builder clearExecuteOrder() {
        bitField0_ = (bitField0_ & ~0x00000100);
        executeOrder_ = 0L;
        onChanged();
        return this;
      }

      // optional string transferIp = 10;
      private java.lang.Object transferIp_ = "";
      /**
       * <code>optional string transferIp = 10;</code>
       */
      public boolean hasTransferIp() {
        return ((bitField0_ & 0x00000200) == 0x00000200);
      }
      /**
       * <code>optional string transferIp = 10;</code>
       */
      public java.lang.String getTransferIp() {
        java.lang.Object ref = transferIp_;
        if (!(ref instanceof java.lang.String)) {
          java.lang.String s = ((com.google.protobuf.ByteString) ref)
              .toStringUtf8();
          transferIp_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string transferIp = 10;</code>
       */
      public com.google.protobuf.ByteString
          getTransferIpBytes() {
        java.lang.Object ref = transferIp_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          transferIp_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string transferIp = 10;</code>
       */
      public Builder setTransferIp(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000200;
        transferIp_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string transferIp = 10;</code>
       */
      public Builder clearTransferIp() {
        bitField0_ = (bitField0_ & ~0x00000200);
        transferIp_ = getDefaultInstance().getTransferIp();
        onChanged();
        return this;
      }
      /**
       * <code>optional string transferIp = 10;</code>
       */
      public Builder setTransferIpBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000200;
        transferIp_ = value;
        onChanged();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:org.apache.inlong.sort.formats.binlog.RowData)
    }

    static {
      defaultInstance = new RowData(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:org.apache.inlong.sort.formats.binlog.RowData)
  }

  public interface PairOrBuilder
      extends com.google.protobuf.MessageOrBuilder {

    // optional string key = 1;
    /**
     * <code>optional string key = 1;</code>
     */
    boolean hasKey();
    /**
     * <code>optional string key = 1;</code>
     */
    java.lang.String getKey();
    /**
     * <code>optional string key = 1;</code>
     */
    com.google.protobuf.ByteString
        getKeyBytes();

    // optional string value = 2;
    /**
     * <code>optional string value = 2;</code>
     */
    boolean hasValue();
    /**
     * <code>optional string value = 2;</code>
     */
    java.lang.String getValue();
    /**
     * <code>optional string value = 2;</code>
     */
    com.google.protobuf.ByteString
        getValueBytes();
  }
  /**
   * Protobuf type {@code org.apache.inlong.sort.formats.binlog.Pair}
   */
  public static final class Pair extends
      com.google.protobuf.GeneratedMessage
      implements PairOrBuilder {
    // Use Pair.newBuilder() to construct.
    private Pair(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private Pair(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final Pair defaultInstance;
    public static Pair getDefaultInstance() {
      return defaultInstance;
    }

    public Pair getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private Pair(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              bitField0_ |= 0x00000001;
              key_ = input.readBytes();
              break;
            }
            case 18: {
              bitField0_ |= 0x00000002;
              value_ = input.readBytes();
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_Pair_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_Pair_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.class, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder.class);
    }

    public static com.google.protobuf.Parser<Pair> PARSER =
        new com.google.protobuf.AbstractParser<Pair>() {
      public Pair parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Pair(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser<Pair> getParserForType() {
      return PARSER;
    }

    private int bitField0_;
    // optional string key = 1;
    public static final int KEY_FIELD_NUMBER = 1;
    private java.lang.Object key_;
    /**
     * <code>optional string key = 1;</code>
     */
    public boolean hasKey() {
      return ((bitField0_ & 0x00000001) == 0x00000001);
    }
    /**
     * <code>optional string key = 1;</code>
     */
    public java.lang.String getKey() {
      java.lang.Object ref = key_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          key_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string key = 1;</code>
     */
    public com.google.protobuf.ByteString
        getKeyBytes() {
      java.lang.Object ref = key_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        key_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    // optional string value = 2;
    public static final int VALUE_FIELD_NUMBER = 2;
    private java.lang.Object value_;
    /**
     * <code>optional string value = 2;</code>
     */
    public boolean hasValue() {
      return ((bitField0_ & 0x00000002) == 0x00000002);
    }
    /**
     * <code>optional string value = 2;</code>
     */
    public java.lang.String getValue() {
      java.lang.Object ref = value_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          value_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string value = 2;</code>
     */
    public com.google.protobuf.ByteString
        getValueBytes() {
      java.lang.Object ref = value_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        value_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private void initFields() {
      key_ = "";
      value_ = "";
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized != -1) return isInitialized == 1;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        output.writeBytes(1, getKeyBytes());
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        output.writeBytes(2, getValueBytes());
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(1, getKeyBytes());
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(2, getValueBytes());
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code org.apache.inlong.sort.formats.binlog.Pair}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder<Builder>
       implements org.apache.inlong.sort.formats.binlog.InLongBinlog.PairOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_Pair_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_Pair_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.class, org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.Builder.class);
      }

      // Construct using org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        key_ = "";
        bitField0_ = (bitField0_ & ~0x00000001);
        value_ = "";
        bitField0_ = (bitField0_ & ~0x00000002);
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.internal_static_org_apache_inlong_sort_formats_binlog_Pair_descriptor;
      }

      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair getDefaultInstanceForType() {
        return org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.getDefaultInstance();
      }

      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair build() {
        org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair buildPartial() {
        org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair result = new org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
          to_bitField0_ |= 0x00000001;
        }
        result.key_ = key_;
        if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
          to_bitField0_ |= 0x00000002;
        }
        result.value_ = value_;
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair) {
          return mergeFrom((org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair other) {
        if (other == org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair.getDefaultInstance()) return this;
        if (other.hasKey()) {
          bitField0_ |= 0x00000001;
          key_ = other.key_;
          onChanged();
        }
        if (other.hasValue()) {
          bitField0_ |= 0x00000002;
          value_ = other.value_;
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.apache.inlong.sort.formats.binlog.InLongBinlog.Pair) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      // optional string key = 1;
      private java.lang.Object key_ = "";
      /**
       * <code>optional string key = 1;</code>
       */
      public boolean hasKey() {
        return ((bitField0_ & 0x00000001) == 0x00000001);
      }
      /**
       * <code>optional string key = 1;</code>
       */
      public java.lang.String getKey() {
        java.lang.Object ref = key_;
        if (!(ref instanceof java.lang.String)) {
          java.lang.String s = ((com.google.protobuf.ByteString) ref)
              .toStringUtf8();
          key_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string key = 1;</code>
       */
      public com.google.protobuf.ByteString
          getKeyBytes() {
        java.lang.Object ref = key_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          key_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string key = 1;</code>
       */
      public Builder setKey(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
        key_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string key = 1;</code>
       */
      public Builder clearKey() {
        bitField0_ = (bitField0_ & ~0x00000001);
        key_ = getDefaultInstance().getKey();
        onChanged();
        return this;
      }
      /**
       * <code>optional string key = 1;</code>
       */
      public Builder setKeyBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
        key_ = value;
        onChanged();
        return this;
      }

      // optional string value = 2;
      private java.lang.Object value_ = "";
      /**
       * <code>optional string value = 2;</code>
       */
      public boolean hasValue() {
        return ((bitField0_ & 0x00000002) == 0x00000002);
      }
      /**
       * <code>optional string value = 2;</code>
       */
      public java.lang.String getValue() {
        java.lang.Object ref = value_;
        if (!(ref instanceof java.lang.String)) {
          java.lang.String s = ((com.google.protobuf.ByteString) ref)
              .toStringUtf8();
          value_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string value = 2;</code>
       */
      public com.google.protobuf.ByteString
          getValueBytes() {
        java.lang.Object ref = value_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          value_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string value = 2;</code>
       */
      public Builder setValue(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
        value_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string value = 2;</code>
       */
      public Builder clearValue() {
        bitField0_ = (bitField0_ & ~0x00000002);
        value_ = getDefaultInstance().getValue();
        onChanged();
        return this;
      }
      /**
       * <code>optional string value = 2;</code>
       */
      public Builder setValueBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
        value_ = value;
        onChanged();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:org.apache.inlong.sort.formats.binlog.Pair)
    }

    static {
      defaultInstance = new Pair(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:org.apache.inlong.sort.formats.binlog.Pair)
  }

  private static com.google.protobuf.Descriptors.Descriptor
    internal_static_org_apache_inlong_sort_formats_binlog_Column_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_org_apache_inlong_sort_formats_binlog_Column_fieldAccessorTable;
  private static com.google.protobuf.Descriptors.Descriptor
    internal_static_org_apache_inlong_sort_formats_binlog_RowData_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_org_apache_inlong_sort_formats_binlog_RowData_fieldAccessorTable;
  private static com.google.protobuf.Descriptors.Descriptor
    internal_static_org_apache_inlong_sort_formats_binlog_Pair_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_org_apache_inlong_sort_formats_binlog_Pair_fieldAccessorTable;

  public static com.google.protobuf.Descriptors.FileDescriptor
      getDescriptor() {
    return descriptor;
  }
  private static com.google.protobuf.Descriptors.FileDescriptor
      descriptor;
  static {
    java.lang.String[] descriptorData = {
      "\n\022InLongBinlog.proto\022%org.apache.inlong." +
      "sort.formats.binlog\"\310\001\n\006Column\022\r\n\005index\030" +
      "\001 \001(\005\022\017\n\007sqlType\030\002 \001(\005\022\014\n\004name\030\003 \001(\t\022\r\n\005" +
      "isKey\030\004 \001(\010\022\017\n\007updated\030\005 \001(\010\022\025\n\006isNull\030\006" +
      " \001(\010:\005false\022:\n\005props\030\007 \003(\0132+.org.apache." +
      "inlong.sort.formats.binlog.Pair\022\r\n\005value" +
      "\030\010 \001(\t\022\016\n\006length\030\t \001(\005\"\231\003\n\007RowData\022D\n\rbe" +
      "foreColumns\030\001 \003(\0132-.org.apache.inlong.so" +
      "rt.formats.binlog.Column\022C\n\014afterColumns" +
      "\030\002 \003(\0132-.org.apache.inlong.sort.formats.",
      "binlog.Column\022:\n\005props\030\003 \003(\0132+.org.apach" +
      "e.inlong.sort.formats.binlog.Pair\022\024\n\014ins" +
      "tanceName\030\004 \001(\t\022\022\n\nschemaName\030\005 \001(\t\022\021\n\tt" +
      "ableName\030\006 \001(\t\022K\n\teventType\030\007 \001(\01620.org." +
      "apache.inlong.sort.formats.binlog.EventT" +
      "ype:\006UPDATE\022\023\n\013executeTime\030\010 \001(\003\022\024\n\014exec" +
      "uteOrder\030\t \001(\003\022\022\n\ntransferIp\030\n \001(\t\"\"\n\004Pa" +
      "ir\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t*f\n\tEventT" +
      "ype\022\n\n\006INSERT\020\001\022\n\n\006UPDATE\020\002\022\n\n\006DELETE\020\003\022" +
      "\n\n\006CREATE\020\004\022\t\n\005ALTER\020\005\022\t\n\005ERASE\020\006\022\t\n\005QUE",
      "RY\020\007\022\010\n\004GTID\020\010B7\n%org.apache.inlong.sort" +
      ".formats.binlogB\014InLongBinlogH\001"
    };
    com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
      new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
        public com.google.protobuf.ExtensionRegistry assignDescriptors(
            com.google.protobuf.Descriptors.FileDescriptor root) {
          descriptor = root;
          internal_static_org_apache_inlong_sort_formats_binlog_Column_descriptor =
            getDescriptor().getMessageTypes().get(0);
          internal_static_org_apache_inlong_sort_formats_binlog_Column_fieldAccessorTable = new
            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
              internal_static_org_apache_inlong_sort_formats_binlog_Column_descriptor,
              new java.lang.String[] { "Index", "SqlType", "Name", "IsKey", "Updated", "IsNull", "Props", "Value", "Length", });
          internal_static_org_apache_inlong_sort_formats_binlog_RowData_descriptor =
            getDescriptor().getMessageTypes().get(1);
          internal_static_org_apache_inlong_sort_formats_binlog_RowData_fieldAccessorTable = new
            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
              internal_static_org_apache_inlong_sort_formats_binlog_RowData_descriptor,
              new java.lang.String[] { "BeforeColumns", "AfterColumns", "Props", "InstanceName", "SchemaName", "TableName", "EventType", "ExecuteTime", "ExecuteOrder", "TransferIp", });
          internal_static_org_apache_inlong_sort_formats_binlog_Pair_descriptor =
            getDescriptor().getMessageTypes().get(2);
          internal_static_org_apache_inlong_sort_formats_binlog_Pair_fieldAccessorTable = new
            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
              internal_static_org_apache_inlong_sort_formats_binlog_Pair_descriptor,
              new java.lang.String[] { "Key", "Value", });
          return null;
        }
      };
    com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
        }, assigner);
  }

  // @@protoc_insertion_point(outer_class_scope)
}
